package com.hsm4;

public class Test {
    public static void main(String[] args) {
        //对象
        Girl hsm = new Girl();
        //Dog juffy = new Dog();
        //hsm.play(kitty);
        //hsm.play(juffy);

        //直接父类的对象是具体的子类对象，这样的好处是不用改动女孩的代码和动物的代码
        //在子类里面对父类有一个方法的重写

        /*Cat kitty = new Cat();
        Animal a = kitty;
        这两句等同于下面*/
        Animal a = new Cat();//这里属于向上转型
        //若直接进行调用，是会出现错误的
        Cat cat = (Cat)a;//这里属于向下转型
        double num = cat.weight;
        System.out.println(num);
        hsm.play(a);
    }
}
